home *** CD-ROM | disk | FTP | other *** search
/ TeX 1995 July / TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO / macros / latex209 / contrib / eqmark / eqmark.sty < prev    next >
Text File  |  1994-01-31  |  4KB  |  95 lines

  1. %%%%%%%%%%%%%%%%%%%%%%%% CUT HERE %%%%%%%%%%%%%%%%%%%%%%
  2. %
  3. %  This is  Eqmark.Sty  (Version 2.0  93/12/10)
  4. %
  5. %  Dirk Nitschke
  6. %  Semperstr. 41
  7. %
  8. %  D-22303 Hamburg
  9. %
  10. %  e-mail: nietschke@math.uni-hamburg.de
  11. %
  12.  
  13. %
  14. %  Die neuen Befehle
  15. %   \rmark#1
  16. %   \lmark#1
  17. %  ermoeglichen es, in einer Formel mit Nummerierung, also
  18. %  z.\,B. in einer \equation oder einem \eqnarray, anstelle
  19. %  der Formelnummer einen beliebigen Text auszugeben, der im
  20. %  Mathematik-Modus (im Textstyle) ausgegeben wird.
  21. %
  22. %  Mit  \rmark{FOO}  erhaelt man den Text  FOO  am rechten Rand,
  23. %  mit  \lmark{FOO}  erhaelt man den Text  FOO  am linken Rand.
  24. %
  25. %  Die automatische Formelnummerierung wird hierdurch nicht gestoert.
  26. %  Jedoch lassen sich die mit  \rmark  oder  \lmark  gesetzten Texte
  27. %  nicht referieren, wie dies sonst bei den normalen Formelnummern
  28. %  moeglich ist.
  29. %
  30. %  Will man die Stiloption  leqno  verwenden, so MUSS  leqno  VOR
  31. %  diesem Style angegeben werden! Macht man dies nicht, so sind
  32. %  zwar die Befehle  \rmark  und  \lmark  verwendbar, jedoch bekommt
  33. %  man nicht das, was man bestellt hat, denn alle Formelnummern
  34. %  landen auf der linken Seite, die gewuenschten Markierungen bleiben
  35. %  jedoch verborgen. Benutzt man in einer Formelzeile die beiden Befehle
  36. %  \lmark  UND  \rmark , so liefert der Output die gewuenschten Texte
  37. %  links UND rechts.
  38. %
  39. %  Dieser Style funktioniert auch in Verbindung mit der Option  fleqn .
  40. %  Jedoch beachte man, dass die Verwendung von  \lmark  leicht zu
  41. %  Ueberschneidungen von Formel und dem am linken Rand erscheinenden
  42. %  Text kommen kann. Dies kann natuerlich auch ohne die Option  fleqn
  43. %  geschehen.
  44. %
  45. %  Die Verwendung von  \lmark  und  \rmark  in Verbindung mit  \nonumber
  46. %  ist zu vermeiden. Sie fuehrt dazu, dass in der naechsten Zeile, die
  47. %  mit einer Formelnummer versehen werden soll, der Text links bzw.\
  48. %  rechts erscheint, den man eigentlich in der vorherigen Zeile anstelle
  49. %  einer Formelnummer plazieren wollte. Hat man in dieser naechsten Zeile
  50. %  eine neu Markierung durch  \lmark  oder  \rmark  definiert, so erhaelt
  51. %  man diese und die Markierung der vorherigen Zeile ist verloren gegangen.
  52. %
  53. \@ifundefined{rmark}{}{\endinput} % Falls schon bekannt abbrechen
  54. \def\fileversion{2.0}
  55. \def\filedate{10 Dec 1993}
  56. \typeout{Style Option `eqmark'  Version\space\fileversion\space<\filedate> (DN)}
  57.  
  58. \let\@qnnum\@eqnnum  % Alte Definition retten (so weiss man, ob Nummern
  59.                      % standardmaessig links oder rechts sind)
  60. \newif\ifstdeqn      % Neues if: Will man Standardnummerierung?
  61. \stdeqntrue          % Zunaechst JA
  62. \newif\ifrtext       % Neues if: Gibt es Text fuer rechts?
  63. \newif\ifltext       % Neues if: Gibt es Text fuer links?
  64. \def\rmark#1{\global\rtexttrue% Ja, Text fuer rechts
  65.              \global\stdeqnfalse% Nein, keine Standardnummer
  66.              \global\def\rtext{#1}% und der steht jetzt in \rtext
  67. }
  68. \def\lmark#1{\global\ltexttrue% Ja, Text fuer links
  69.              \global\stdeqnfalse% Nein, keine Standardnummer
  70.              \global\def\ltext{#1}% und der steht jetzt in \ltext
  71. }
  72. \def\@eqnnum{%
  73.  \ifstdeqn%                     %wenn Standardnummerierung (meistens)
  74.   \@qnnum%                      %dann geretteter Befehl
  75.  \else%                         %wenn nicht:
  76.   \hbox to .01\p@{}%            %zunaechst die kleine Box
  77.   \addtocounter{equation}{-1}   %damit Zaehlung weiter richtig
  78.   \ifrtext%                     %wenn Text fuer rechts:
  79.    \llap{$\rtext$}%             %Ausgabe wie Standardnummer rechts
  80.    \global\rtextfalse%          %nein, kein weiterer Text rechts
  81.    \global\stdeqntrue%          %wieder Standard
  82.   \fi%                          %end of \ifrtext
  83.   \ifltext%                     %wenn Text fuer links:
  84.    \rlap{\hskip-\displaywidth%  %Ausgabe wie Standardnummer links
  85.          $\ltext$}%             %(vgl.\ leqno.sty)
  86.    \global\ltextfalse%          %nein, kein weiterer Text links
  87.    \global\stdeqntrue%          %wieder Standard
  88.   \fi%                          %end of \ifltext
  89.  \fi%                           %end of \ifstdeqn
  90. }
  91. \endinput
  92. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  93. % end of  eqmark.sty
  94. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  95.